草庐IT

JavaScript prototype(原型对象)

全部标签

javascript - 为什么在 JS 中用匿名函数包装每个原型(prototype) "class"对象?

查看thisJScode通过DavidFowler他用一个匿名的自执行方法包装每个“类”,他在其中发送jQuery和window。我知道这是一种确保$和window实际上是您期望的全局jQuery和winndow变量的方法。但这不是有点过度保护了吗?您是否应该保护自己免受其他人更改$和window变量的影响-实际上是否有代码可以做到这一点,如果有,为什么?另外,像这样包装所有东西还有其他优势吗? 最佳答案 如果我没记错的话,除了jQuery之外,还有其他一些库使用$. 关于javascr

javascript - 为什么对象在 JS 中用括号括起来?

给定以下示例:varfoo={root:({key1:"Value1",key2:"Value2",key3:"Value3"})};与以下相比有什么区别:varfoo={root:{key1:"Value1",key2:"Value2",key3:"Value3"}};在第一个示例中,有一个额外的括号包裹着对象。这有什么用?它与范围界定有什么关系吗?它会以任何方式影响执行吗?谢谢! 最佳答案 这里绝对没有区别。据我所知,它确实有所作为的一个地方是当你evaluateanobjectliteralontheconsole.

javascript - 访问原型(prototype)中的 "private"变量

是否可以在JavaScript中创建一个可以在原型(prototype)中访问的私有(private)变量?我尝试了以下obviouslydoesn'twork,因为bar只能从Foo中访问,而不能从原型(prototype)中访问。functionFoo(){varbar='test';}Foo.prototype.baz=function(){console.log(bar);};我知道我也不能使用this.bar='test',因为那样会使thepropertypublic据我所知。如何使bar变量私有(private),但可由原型(prototype)访问?

javascript - 有没有一种简单的方法来重置 TimelineMax JavaScript 对象?

我在重新初始化TimelineMax序列时遇到问题。调整窗口大小时,我需要将所有补间动画恢复为默认样式并根据新窗口大小重新初始化它们。有没有一种简单的方法可以有效地破坏时间线并重新开始,而无需手动重置所有CSS属性? 最佳答案 根据您想要实现的目标,我可以推荐两种方法。第一个与您描述的完全一样:myTimeline.pause(0,true);//Gobacktothestart(trueistosuppressevents)myTimeline.remove();这会将一切带回到时间线开始时的状态。您也可以通过调用.invalid

javascript - 如何使用 jquery 延迟对象检查元素是否在 DOM 中?

我想知道是否可以使用jQuery延迟对象来测试元素是否在DOM中。这是我的想法:functionchkDOM(selector){if$(selector){returndeferred.promise();}}$.when(chkDOM(selector)).then(function(){//dosomething});我不太清楚如何编写代码来实现这一点,但我希望我的问题是有道理的。如果我能让这部分正常工作,那么我基本上可以延迟某些jquery插件的调用,以便它们真正正常运行。谢谢! 最佳答案 我假设您正在运行一个定期检查选择器

javascript - 检查是否是一个对象

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我需要检查一个变量是否是一个纯对象实例。例如:一个HTMLElement是instanceof对象。但我真的需要检查它是否只是一个对象,比如{a:true,b:false}是。它不能验证数组。注意:我可以使用Chrome的更新功能,如果更好的话。

javascript - 在 TypeScript 中实现接口(interface)原型(prototype)

我已经为我的服务结果创建了一个TypeScript接口(interface)。现在我想为我的两个函数定义一个基本功能。问题是我得到一个错误:Theproperty'ServiceResult'doesnotexistonvalueoftype'Support'.我使用WebStorm进行开发(VS2012让我感到紧张,因为大型项目卡住-等待更好的集成:P)。这是我的做法:moduleSupport{exportinterfaceServiceResultextendsObject{Error?:ServiceError;Check?():void;GetErrorMessage?():

javascript - 在原型(prototype)中使用 css 选择器触发点击事件

我是Prototypejs的新手。我有一个这样的元素,Save&Close我有一个anchor标记选择器,$$('#toolbar-savea')。通过使用此选择器,我如何触发click事件?或者你可以建议的任何其他方式?提前致谢。 最佳答案 $$('#toolbar-savea')[0].click();FIDDLE 关于javascript-在原型(prototype)中使用css选择器触发点击事件,我们在StackOverflow上找到一个类似的问题:

javascript - javascript对象文字中的事件处理程序

我正在尝试创建一个对象并从中分配点击处理程序。我意识到我无法按照自己的意愿去做,因为“this”与按钮相关联,而不是与对象文字相关联,从而中断了对函数的访问。“未捕获的类型错误:对象#没有方法‘clearSelection’”请看下面的fiddle。http://jsfiddle.net/ebKk8/这里是引用代码。它不应该在这个阶段做任何有用的事情,除了说明问题:)functionThingConstructor(someData){varbutton=$("#someButton");return{initialise:function(){button.click(functio

javascript - 如何访问 jQuery 事件函数中的对象属性

对不起我的英语。这是示例代码:/***@constructor*/functionMyNewClass(){this.$my_new_button=$('Button');this.my_value=5;this.init=function(){$('body').append(this.$my_new_button);this.$my_new_button.click(function(){//Itsalwaysalerts"undefined"alert(this.my_value);})}}如何在jQuery单击事件函数中访问对象my_value属性?可能吗?